const path = require('path'); //引用nodepath

module.exports = {

  // 基本路径
  publicPath: process.env.NODE_ENV === 'production' ? '' : './', //pcadmin
  // 输出文件目录
  outputDir: process.env.NODE_ENV === 'production' ? 'pcadmin' : 'devdist',
  // outputDir: process.env.NODE_ENV === 'production' ? 'test' : 'devdist',
  // eslint-loader 是否在保存的时候检查
  // lintOnSave: false,
  configureWebpack: (config) => {
    config.resolve = { // 配置解析别名
      extensions: ['.js', '.json', '.vue'], // 自动添加文件名后缀
      alias: {
        // 'vue': 'vue/dist/vue.js',
        '@': path.resolve(__dirname, './src'),
        'c': path.resolve(__dirname, './src/components'),
        'assets': path.resolve(__dirname, './src/assets')
      }
    }
    // 线上环境
    if (process.env.NODE_ENV === 'production') {
      config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true
    }
  },

  // 生产环境是否生成 sourceMap 文件
  productionSourceMap: false,
  // webpack-dev-server 相关配置
  devServer: {
    open: true, // 编译完成是否打开网页
    host: '0.0.0.0', // 指定使用地址，默认localhost,0.0.0.0代表可以被外界访问
    port: 8080, // 访问端口
    https: false, // 编译失败时刷新页面
    hot: false, // 开启热加载
    hotOnly: false,
    //跨域解决
    // proxy: {
    // },
    overlay: { // 全屏模式下是否显示脚本错误
      warnings: true,
      errors: true
    },
    before: app => {},
    disableHostCheck: true,
  },
  /**
   * 第三方插件配置
   */
  pluginOptions: {

  }
}